
// GallopView.h : interface of the CGallopView class
//

#ifndef LUA_QT_QPEN_H
#define LUA_QT_QPEN_H

	#include <luaQt/config.h>
	#include <QAction>
	#include <QIcon>
	#include <QPen>


	/*////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//tolua_begin

namespace Qt{
enum PenStyle { // pen style
        NoPen,
        SolidLine,
        DashLine,
        DotLine,
        DashDotLine,
        DashDotDotLine,
        CustomDashLine
#ifndef Q_MOC_RUN
        , MPenStyle = 0x0f
#endif
    };

    enum PenCapStyle { // line endcap style
        FlatCap = 0x00,
        SquareCap = 0x10,
        RoundCap = 0x20,
        MPenCapStyle = 0x30
    };

    enum PenJoinStyle { // line join style
        MiterJoin = 0x00,
        BevelJoin = 0x40,
        RoundJoin = 0x80,
        SvgMiterJoin = 0x100,
        MPenJoinStyle = 0x1c0
    };
    }
	class QPen
{
    QPen();
    QPen(Qt::PenStyle);
    QPen(const QColor &color);
    //QPen(const QBrush &brush, qreal width, Qt::PenStyle s = Qt::SolidLine,
    //     Qt::PenCapStyle c = Qt::SquareCap, Qt::PenJoinStyle j = Qt::BevelJoin);
    QPen(const QPen &pen);
    ~QPen();


    //Qt::PenStyle style() const;
    //void setStyle(Qt::PenStyle);

    QVector<qreal> dashPattern() const;
    void setDashPattern(const QVector<qreal> &pattern);

    qreal dashOffset() const;
    void setDashOffset(qreal doffset);

    qreal miterLimit() const;
    void setMiterLimit(qreal limit);

    qreal widthF() const;
    void setWidthF(qreal width);

    int width() const;
    void setWidth(int width);

    QColor color() const;
    void setColor(const QColor &color);

    QBrush brush() const;
    void setBrush(const QBrush &brush);

    bool isSolid() const;

    Qt::PenCapStyle capStyle() const;
    void setCapStyle(Qt::PenCapStyle pcs);

    Qt::PenJoinStyle joinStyle() const;
    void setJoinStyle(Qt::PenJoinStyle pcs);

    bool isCosmetic() const;
    void setCosmetic(bool cosmetic);


    bool isDetached();
};
	
	//tolua_end
	//*//////////////////////////////////////////////////////////////////////////////////////////////////////////////


#endif
